En la versión 1.8.0.2 en Oracle de un cliente esta dando el siguiente inconveniente al intentar ingresar a Solicitud de Horas extras y a solicitud de Descuentos Eventuales desde el Portal.

Errores desde el elmah:

SOLICITUD HORAS EXTRAS

Oracle.ManagedDataAccess.Client.OracleExceptionORA-00972: el identificador es demasiado largo

System.Data.EntityCommandExecutionException: An error occurred while executing the command definition. See the inner exception for details. ---> Oracle.ManagedDataAccess.Client.OracleException: ORA-00972: el identificador es demasiado largo at OracleInternal.ServiceObjects.OracleCommandImpl.VerifyExecution(OracleConnectionImpl connectionImpl, Int32& cursorId, Boolean bThrowArrayBindRelatedErrors, OracleException& exceptionForArrayBindDML, Boolean& hasMoreRowsInDB, Boolean bFirstIterationDone) at OracleInternal.ServiceObjects.OracleCommandImpl.ExecuteReader(String commandText, OracleParameterCollection paramColl, CommandType commandType, OracleConnectionImpl connectionImpl, OracleDataReaderImpl& rdrImpl, Int32 longFetchSize, Int32 lobPrefetchSize, OracleDependencyImpl orclDependencyImpl, Int64[] scnForExecution, Int64[]& scnFromExecution, OracleParameterCollection& bindByPositionParamColl, Boolean& bBindParamPresent, Boolean isDescribeOnly, Boolean isFromEF) at Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior) at Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior) --- End of inner exception stack trace --- at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior) at System.Data.Objects.Internal.ObjectQueryExecutionPlan.ExecuteTResultType at System.Data.Objects.ObjectQuery1.GetResults(Nullable1 forMergeOption) at System.Data.Objects.ObjectQuery1.System.Collections.Generic.IEnumerable<T>.GetEnumerator() at System.Collections.Generic.List1..ctor(IEnumerable1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at Aseinfo.VH4.Salarios.Services.OtroDescuentoService.GetOtrosDescuentosSolicitadosPendienteFlujoPorExpedienteDigita(Int32 codigoExpediente, Expression1[] includes) in c:\vh4\VH4\Salarios\Services\OtrosDescuentos\OtroDescuentoService.cs:line 172 at Aseinfo.VH4.Administracion.Controllers.DescuentoEventualController.Index() in c:\BuildAgent\work\608d469cc106b504\VH4\Administracion\Controllers\DescuentoEventualController.cs:line 173 at lambda_method(Closure , ControllerBase , Object[] ) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 parameters) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12() at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)


SOLICITUD DESCUENTOS EVENTUALES

Oracle.ManagedDataAccess.Client.OracleExceptionORA-00972: el identificador es demasiado largo

System.Data.EntityCommandExecutionException: An error occurred while executing the command definition. See the inner exception for details. ---> Oracle.ManagedDataAccess.Client.OracleException: ORA-00972: el identificador es demasiado largo at OracleInternal.ServiceObjects.OracleCommandImpl.VerifyExecution(OracleConnectionImpl connectionImpl, Int32& cursorId, Boolean bThrowArrayBindRelatedErrors, OracleException& exceptionForArrayBindDML, Boolean& hasMoreRowsInDB, Boolean bFirstIterationDone) at OracleInternal.ServiceObjects.OracleCommandImpl.ExecuteReader(String commandText, OracleParameterCollection paramColl, CommandType commandType, OracleConnectionImpl connectionImpl, OracleDataReaderImpl& rdrImpl, Int32 longFetchSize, Int32 lobPrefetchSize, OracleDependencyImpl orclDependencyImpl, Int64[] scnForExecution, Int64[]& scnFromExecution, OracleParameterCollection& bindByPositionParamColl, Boolean& bBindParamPresent, Boolean isDescribeOnly, Boolean isFromEF) at Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteReader(Boolean requery, Boolean fillRequest, CommandBehavior behavior) at Oracle.ManagedDataAccess.Client.OracleCommand.ExecuteDbDataReader(CommandBehavior behavior) at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior) --- End of inner exception stack trace --- at System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands(EntityCommand entityCommand, CommandBehavior behavior) at System.Data.Objects.Internal.ObjectQueryExecutionPlan.ExecuteTResultType at System.Data.Objects.ObjectQuery1.GetResults(Nullable1 forMergeOption) at System.Data.Objects.ObjectQuery1.System.Collections.Generic.IEnumerable<T>.GetEnumerator() at System.Collections.Generic.List1..ctor(IEnumerable1 collection) at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at Aseinfo.VH4.Salarios.Services.OtroDescuentoService.GetOtrosDescuentosSolicitadosPendienteFlujoPorExpedienteDigita(Int32 codigoExpediente, Expression1[] includes) in c:\vh4\VH4\Salarios\Services\OtrosDescuentos\OtroDescuentoService.cs:line 172 at Aseinfo.VH4.Administracion.Controllers.DescuentoEventualController.Index() in c:\BuildAgent\work\608d469cc106b504\VH4\Administracion\Controllers\DescuentoEventualController.cs:line 173 at lambda_method(Closure , ControllerBase , Object[] ) at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary2 parameters) at System.Web.Mvc.ControllerActionInvoker.<>c__DisplayClass15.<InvokeActionMethodWithFilters>b__12() at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodFilter(IActionFilter filter, ActionExecutingContext preContext, Func1 continuation) at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethodWithFilters(ControllerContext controllerContext, IList1 filters, ActionDescriptor actionDescriptor, IDictionary`2 parameters) at System.Web.Mvc.ControllerActionInvoker.InvokeAction(ControllerContext controllerContext, String actionName)

asked 27 Oct '14, 21:44

Josue%20Mancilla's gravatar image

Josue Mancilla
(suspended)
accept rate: 42%

edited 30 Oct '14, 14:51

El error es bien claro: ORA-00972: el identificador es demasiado largo

¿Qué información estas enviando a guardar? Podrías incluir la información del Request

(27 Oct '14, 21:53) Fernando Paz ♦♦ Fernando%20Paz's gravatar image

Fernando, el problema da desde que le das clic al hipervinculo de Solicitud de Horas Extras, es decir ni si quiera entra a la pantalla de la solicitud de horas extras.

Y probando con otra instalación de Evolution en Oracle estas opciones si funcionan, como validar que es lo que ocurre?

(27 Oct '14, 22:00) Josue Mancilla Josue%20Mancilla's gravatar image

Por eso mismo, te estaba pidiendo que adjuntaras la información del REQUEST, para ver que está enviando al server.

(27 Oct '14, 23:20) Fernando Paz ♦♦ Fernando%20Paz's gravatar image

Voy a ver si puedo reproducirlo en desarrollo en esa misma versión, ya les cuento...

(27 Oct '14, 23:21) sabanito ♦♦ sabanito's gravatar image

Ya tengo la respuesta para tu problema:

  1. La columna que da problema es 'TPL_IGNORA_AUTORIZ_LUEGO_CORTE'.
  2. Esta columna genera el problema reportado y fue corregido el 12/Marzo/2014 en el Issue #1386. La corrección fue renombrar la columna a 'TPL_IGNORA_AUT_LUEGO_CORTE', ya que Oracle no permite nombres de tablas o columnas mayores de 30 caracteres.
  3. Este cambio se distribuyó en el script de upgrade de la versión 1.8.2.0 (18 - SchemaUpgrade EvoData Oracle 1_8_1_1 a 1_8_2_0.sql), se puede constatar en el ZIP con el release de la versión.
  4. Además en este release, se distribuyó un nueva versión del archivo Aseinfo.VH4.DataModels.dll, el cual mapea la columna con su nuevo nombre al modelo de datos de Evolution.

En conclusión es un error ya resuelto en una versión muy anterior a la actual.

link

answered 30 Oct '14, 01:39

Fernando%20Paz's gravatar image

Fernando Paz ♦♦
17.3k81635
accept rate: 51%

edited 30 Oct '14, 15:11

En ambos casos falla en el mismo lugar y es un método en donde le pide a la base de datos todas las entidades (horas extras o descuentos eventuales) en donde el código de expediente que digitó la transacción es igual al código de expediente asociado al usuario autenticado.

Revisa el código de expediente del usuario que está ingresando a esas pantallas.

link

answered 27 Oct '14, 23:19

Fernando%20Paz's gravatar image

Fernando Paz ♦♦
17.3k81635
accept rate: 51%

No lo pude reproducir. Lo que me extraña es que habla del "identificador" muy largo. No será que hay una lista de valores que estas usando (modificada) y ahi has puesto un alias a una tabla mas largo de 30 caracteres? En el standard no falla, por lo que definitivamente no es un nombre de tabla estándar.

link

answered 28 Oct '14, 15:39

sabanito's gravatar image

sabanito ♦♦
(suspended)
accept rate: 54%

Fijate que revisé las listas de valores y no hay ningún problema, todas están bien no estoy usando ninguna modificada.

(28 Oct '14, 17:20) Josue Mancilla Josue%20Mancilla's gravatar image

Este es el REQUEST que me da al momento de dar clic en la opción de Solicitud de Horas Extras:

Request:
URL pedida: https://localhost/Evolution/Solicitudes/SolicitudHoraExtra
Método de la petición: GET
Código de estado: 200 OK
Cache-Control: *private, s-maxage=0*
content-encoding:*gzip*
content-length:*8421*
content-type: *text/html; charset=utf-8*
date: *Tue,28 Oct 2014 17:17:21 GMT*
Server: *Microsoft-IIS/7.5*
Vary: *Accept-Encoding*
X-AspNet-Version:*4.0.30319*
X-AspNetMvc-Version:*3.0*
x-Powered-By:*ASP.NET*

Host:*localhost*
User-Agent:*Mozilla/5.0 (Windows NT 6.1; WOW64; rv:32.0) Gecko/20100101 Firefox/32.0*
Accept:"text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8"
Accept-Language:"es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3"
Accept-Encoding:"gzip, deflate"
Cookie:"UsernameCookieKey=; 
       ASP.NET_SessionId=bbk3vadrt2nrtmwrvgmzcwsv;
       __RequestVerificationToken_L0V2b2x1dGlvbg__=6RTtDaZYuIbjArKv3TuxQs790WXVdDWYVrdZ1HcyCJTeMVlCMhB6KI3IsdlUsuA7/mtCPAvkO9rZ+SYgC49zFWrpRmKliWR2OtzF3Wsylp6YNfPbbRTUqkZ+2OIAr+tyej02rAegINyTOpLG30WP4PGBAao8SktpsrR67LuDAs8=;
       ASPXFORMSAUTH=055F5BB414E537720D8B8A2E53E9493ACF7F2665074D797F6967B21883B30BC2EB08D73F46182F12DCE1C2A582A5CDF11FF38B0C78FC05E8EC033887F533BB320E6A3B5203B1B69EB440BB0870B50AC3756F0F30795189E437B835BC2335A1BBF8DF2DF81F377490F976FE717CC4111AEF4B9A72A04A2F4AB395DDE34C523654"
Connection:"keep-alive"
link

answered 28 Oct '14, 17:30

Josue%20Mancilla's gravatar image

Josue Mancilla
(suspended)
accept rate: 42%

edited 29 Oct '14, 01:06

Fernando%20Paz's gravatar image

Fernando Paz ♦♦
17.3k81635

Pone un profiler con EFProfiler y nos envias la instrucción select que genera la consulta al momento de ejecutar el request.

Tengo la teoría que hay un nombre de objeto que tiene 30 caracteres y que al generar la instrucción select, como le pone unos alias a las tablas, este alias resulta en un identificador mayor de 30 caracteres.

(29 Oct '14, 01:08) Fernando Paz ♦♦ Fernando%20Paz's gravatar image

Fernando te acabo de mandar los procedimientos que estan dando inconveniente a tu correo.

(29 Oct '14, 21:48) Josue Mancilla Josue%20Mancilla's gravatar image
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Evolution en BitBucket

En este sitio puede acceder al código fuente, centro de descargas y reportar bugs, propuestas y mejoras para Evolution.

Evolution en JIRA

En este sitio puedes sugerir nueva funcionalidad para Evolution, o puedes votar por la funcionalidad ya propuesta por otros usuarios.

Tags:

×34
×27
×11
×6

Asked: 27 Oct '14, 21:44

Seen: 5,634 times

Last updated: 30 Oct '14, 15:11

[Acerca de] [Preguntas Frecuentes] [Privacidad] [Soporte] [Contacto]
Copyright 2013-2018. Asesores en Informática